<?php
	session_start();
	header("Cache-Control: no-store, no-cache, must-revalidate");

	require('func_cliente_pedido.php');

/*

primero esta el cliente y/o socio de la sesion
luego solicitas el pedido de donde quieres consultar las facturas emitidas
select estado from pdvpedidosint where cliente=%ld and socio=%d and folio=%ld
la tabla pdvpedidosint tiene un estatus ,, el campo se llama "estado"
[21:22] Armando: ese campo debe ser = 'F'

select tipomov,case when tipomov=120 then 'FACTURA FORANEA' else 'FACTURA LOCAL ' end,factura from pdvfacturasxpedido
where pedido=1 

seleccionar una factura ---
--
select fecha_mov,fecha_cap,i.codigo_art,cantidad,i.p_venta,cliente,nombre,nombre_art,i.descuento,i.iva from
invmovmes i inner join invarticulos a on a.codigo_art=i.codigo_art
left join cxcclientes on cliente=numcte where num_mov=%d and folio=%ld
--

*/
function combofacturas($cvepedido){
	$clavesesion=$_SESSION['sesId'];
	$clavecliente=$_SESSION['cvecliente'];
	$clavesocio=$_SESSION['cvesocio'];
	$resultado="0|";
	$conexion=Obtener_Conexion();
	$sql=" select estado from pdvpedidosint where cliente=$clavecliente and socio=$clavesocio and folio=$cvepedido ";
	$res=pg_query($conexion,$sql)  or die ("Error $sql");
	$tieneres=pg_num_rows($res);
	if ($tieneres>0){
		$linea=pg_fetch_array($res);
		if ($linea['estado']=="F"){
			//Buscarlo en tabla siguiente
			$sql2=" select tipomov,case when tipomov=120 then 'FACTURA FORANEA' else 'FACTURA LOCAL ' end,factura from pdvfacturasxpedido where pedido=$cvepedido ";
			$res2=pg_query($conexion,$sql2)  or die ("Error $sql2");
			$resultado="1|";
			$resultado.="<strong>Facturas :</strong><select id='combofacts' name='combofacts' >";
			$resultado.="<option value='0'>Seleccionar Facturas</option>";
			while ($linea2=pg_fetch_array($res2)){
				$resultado.="<option value='".$linea2[2]."'>".$linea2[0]."-".$linea2[1]."-".$linea2[2]."</option>";
			}
			$resultado.="</select>";
			$resultado.="<br /><input type='button' name='list' value=' Ver ' onclick='fnmuestrafactura();'>";
		}else{
			//Significa que si existe ese pedido, mas sin embargo todavia no esta facturado
			$resultado="2|";
		}
	}else{
		//Significa que no existe ese pedido
		$resultado="0|".$sql;
	}
	return $resultado;
}

/*
                   GRUPO MORSA DE MEXICO S.A DE C.V. MATRIZ
                      LISTADO DE DOCUMENTOS DE INVENTARIO
 
FECHA: 22/02/2008                                                     HOJA:001
TIPO:  110 FACTURAS LOCALES                                    FOLIO: 00599054
FECHA DE CAPTURA:  18/02/2008               FECHA DE ACTUALIZACION: 18/02/2008
CLIENTE: 0000400 INTEGRADORA EN REFACCIONES DE SINALOA, S
------------------------------------------------------------------------------
CODIGO                DESCRIPCION           CANTIDAD  P. UNITARIO      IMPORTE
------------------------------------------------------------------------------
3211-HY-GAR           CABLES PARA BUJIAS           1       145.94       145.94
TW-463-S-STD          ARANDELA                     1        48.55        48.55
RC-64651              BUJE DE HORQUILLA            2        40.06        80.12
S-9578-STD            VALVULA DE ESCAPE            2        41.91        83.82
191-407-182-SYD       BUJE DE HORQUILLA            2        20.52        41.04
---------                                  ---------              ------------
   5   CODIGOS                                     8 PZAS   SUMA:       399.47
                                                          DESCTO: 0%      0.00
                                                          SUBTOT:       399.47
                                                          I.V.A.:        59.92
                                                          TOTAL:        459.39

*/
function muestrafacturadocto($cvefactura,$tipo){
	$clavesesion=$_SESSION['sesId'];
	$clavecliente=$_SESSION['cvecliente'];
	$clavesocio=$_SESSION['cvesocio'];
	$resultado="";
	$nombrecte=Obtener_Nombre_Cliente($clavecliente);
	$fecha=date("d/m/Y");
	$conexion=Obtener_Conexion();
	//$sql=" select fecha_mov,fecha_cap,i.codigo_art,cantidad,i.p_venta,cliente,nombre,nombre_art,i.descuento,i.iva from invmovmes i inner join invarticulos a on a.codigo_art=i.codigo_art left join cxcclientes on cliente=$clavecliente where num_mov=$tipo and folio=$cvefactura ";
	$sql=" select fecha_mov,fecha_cap,i.codigo_art,cantidad,i.p_venta,cliente,nombre_art,i.descuento,i.iva from invmovmes i inner join invarticulos a on a.codigo_art=i.codigo_art left join cxcclientes on cliente=$clavecliente where num_mov=$tipo and folio=$cvefactura group by fecha_mov,fecha_cap,i.codigo_art,cantidad,i.p_venta,cliente,nombre_art,i.descuento,i.iva";
        $bandocumento=0;
	$res=pg_query($conexion,$sql)  or die ("Error $sql");
	$tieneres=pg_num_rows($res);
	if ($tieneres>0){
		//$renglon=pg_fetch_row($res,1);

		while($linea=pg_fetch_array($res)){
                       if($bandocumento==0){
                               $bandocumento=1;
                                $resultado.="<CENTER>GRUPO MORSA DE MEXICO S.A DE C.V. MATRIZ</CENTER><br>";
		                $resultado.="<CENTER>LISTADO DE DOCUMENTOS DE INVENTARIO</CENTER><br>";
		                $resultado.="<table width='800' boder=1>";

		                $resultado.="<tr>";
			        $resultado.="<td colspan='3' align='left'>FECHA: $fecha</td>";
			        $resultado.="<td colspan='3' align='right'>HOJA:001</td>";
		                $resultado.="</tr>";
		                $resultado.="<tr>";
			        $resultado.="<td colspan='3' align='left'>TIPO: $tipo</td>";
			        $resultado.="<td colspan='3' align='right'>FOLIO: $cvefactura</td>";
		                $resultado.="</tr>";
		                $resultado.="<tr>";
			        $resultado.="<td colspan='3' align='left'>FECHA DE CAPTURA: ".$renglon[1]."</td>";
			        $resultado.="<td colspan='3' align='right'>FECHA DE ACTUALIZACION: ".$renglon[0]."</td>";
		                $resultado.="</tr>";
		                $resultado.="<tr>";
			        $resultado.="<td colspan='6'>CLIENTE: $clavecliente $nombrecte</td>";
                                $resultado.="</tr>";
                      		$resultado.="<tr>";
                     		$resultado.="<td colspan='6'> ______________________________________________________________________________________________________________________________________</td>";;
                   		$resultado.="</tr>";
                       		$resultado.="<tr>";
			        $resultado.="<td >CODIGO</td>";
			        $resultado.="<td >DESCRIPCION</td>";
			        $resultado.="<td align='right'>CANTIDAD</td>";
                                $resultado.="<td align='right'>P. UNITARIO</td>";
                    		$resultado.="<td align='right'>IMPORTE</td>";
                    		$resultado.="</tr>";
                      		$resultado.="<tr>";
                     		$resultado.="<td colspan='6'> ______________________________________________________________________________________________________________________________________</td>";
                   		$resultado.="</tr>";
                                $contadorcodigos=0;
                     		$contadorpiezas=0;
                    		$sumapiezas=0;
                       }
			$contadorcodigos=$contadorcodigos+1;
			$resultado.="<tr>";
				$resultado.="<td>".$linea['codigo_art']."</td>";
				$resultado.="<td>".$linea['nombre_art']."</td>";
				$resultado.="<td align='right'>".$linea['cantidad']."</td>";
				$resultado.="<td align='right'>".number_format($linea['p_venta'],2,".",",")."</td>";
				$importe=$linea['cantidad']*$linea['p_venta'];
				$contadorpiezas=$contadorpiezas+$linea['cantidad'];
				$sumapiezas=$sumapiezas+$importe;
				$resultado.="<td align='right'>".number_format($importe,2,".",",")."</td>";
			$resultado.="</tr>";
		}
		$resultado.="<tr>";
			$resultado.="<td colspan=2 align='center'>---------</td>";
			$resultado.="<td colspan=2 align='right'>----------</td>";
			$resultado.="<td align='right'>-----------</td>";
		$resultado.="</tr>";
	
		$resultado.="<tr>";
		if ($contadorcodigos==1){
			$leyendacod=" $contadorcodigos Codigo ";
		}else{
			$leyendacod=" $contadorcodigos Codigos ";
		}
			$resultado.="<td colspan=2 align='center'>".$leyendacod."</td>";
			$resultado.="<td colspan=2 align='right'> ".$contadorpiezas." PZAS</td>";
			$resultado.="<td align='right'>SUMA: ".number_format($sumapiezas,2,".",",")."</td>";
		$resultado.="</tr>";
		$descuento=$renglon[7];
		$iva=0.15;
		if ($descuento>0){
			$subtotal=$sumapiezas;
			$impiva=$subtotal*$iva;
			$total=$subtotal+$impiva;
		}else{
			$descuento=convIva2($descuento);
			$totdescuento=($descuento*$sumapiezas);
			$subtotal=$sumapiezas-$totdescuento;
			$impiva=$subtotal*$iva;
			$total=$subtotal+$impiva;
		}
		$resultado.="<tr>";
			$resultado.="<td colspan=6 align='right'>DESCTO: ".number_format($renglon[7],2,".",",")." </td>";
		$resultado.="</tr>";
		$resultado.="<tr>";
			$resultado.="<td colspan=6 align='right'>SUBTOT: ".number_format($subtotal,2,".",",")."</td>";
		$resultado.="</tr>";
		$resultado.="<tr>";
			$resultado.="<td colspan=6 align='right'>I.V.A.: ".number_format($impiva,2,".",",")."</td>";
		$resultado.="</tr>";
		$resultado.="<tr>";
			$resultado.="<td colspan=6 align='right'>TOTAL: ".number_format($total,2,".",",")."</td>";
		$resultado.="</tr>";

		$resultado.="</table>";

	}else{
		
		$resultado.="NO TIENE MOVIMIENTOS";
	}
	return $resultado;
}


function Estado_de_Cuenta(){
	$clavecliente=$_SESSION['cvecliente'];
	$clavesocio=$_SESSION['cvesocio'];
	$conexion=Obtener_Conexion();
	if ($clavesocio>0){
		$sqlbase="select k.numcte,k.numsocio,k.numdocto,k.tipomov,tipomov2,k.fechadoc,case when x.fechaven isnull then k.fechaven else x.fechaven end,k.importe,k.concepto,afectacion,cte.nombre,cte.direccion,cte.saldo_act,s.nombre,s.direccion,s.saldo_act,cte.telefono,cte.tel_dos,fax,rfc,s.telefono,s.tel_dos,referencia,k.agente,cd.nombre,et.nombre,descto_pronto_pago,st.nombre,limite_cred,g.nombre,case when k.tipomov > 700 then 'A' when k.tipomov > 200 and k.tipomov < 300 or k.tipomov2 > 200 and k.tipomov2 < 300 then 'B' when k.tipomov=110 or k.tipomov=120 or tipomov2=110 or tipomov2=120 then 'C' end as orden,case when t.afectacion='C' or k.tipomov > 700 then k.fechadoc else f.fechadoc end as fechafac,case when x.fechaven isnull then ' ' else '*' end from cxckardex k left join cxcfacama g on k.tipomov=g.tipomov and k.numdocto=g.numdocto inner join cxctipomov t on k.tipomov=t.tipomov inner join cxcclientes cte on k.numcte=cte.numcte left join cxcsocios s on cte.numcte=s.numcte and k.numsocio=s.numsocio inner join cxcestados et on cte.estado=et.estado inner join cxcciudades cd on cd.estado=cte.estado and cd.ciudad=cte.ciudad left join ctes_status st on id=cte.vigente left join cxcfacturas f on f.tipomov=k.tipomov2 and f.numdocto=k.numdocto left join cxcfechascam x on k.tipomov=x.tipomov and k.numdocto=x.numdocto where k.tipomov not in (710,720,730,740) and k.numcte=$clavecliente and k.numsocio=$clavesocio and cve_aplicacion=' ' order by orden,fechafac,numdocto,afectacion desc";
	}else{
		$sqlbase="select k.numcte,k.numsocio,k.numdocto,k.tipomov,tipomov2,k.fechadoc,case when x.fechaven isnull then k.fechaven else x.fechaven end,k.importe,k.concepto,afectacion,cte.nombre,cte.direccion,cte.saldo_act,s.nombre,s.direccion,s.saldo_act,cte.telefono,cte.tel_dos,fax,rfc,s.telefono,s.tel_dos,referencia,k.agente,cd.nombre,et.nombre,descto_pronto_pago,st.nombre,limite_cred,g.nombre,case when k.tipomov > 700 then 'A' when k.tipomov > 200 and k.tipomov < 300 or k.tipomov2 > 200 and k.tipomov2 < 300 then 'B' when k.tipomov=110 or k.tipomov=120 or tipomov2=110 or tipomov2=120 then 'C' end as orden,case when t.afectacion='C' or k.tipomov > 700 then k.fechadoc else f.fechadoc end as fechafac,case when x.fechaven isnull then ' ' else '*' end from cxckardex k left join cxcfacama g on k.tipomov=g.tipomov and k.numdocto=g.numdocto inner join cxctipomov t on k.tipomov=t.tipomov inner join cxcclientes cte on k.numcte=cte.numcte left join cxcsocios s on cte.numcte=s.numcte and k.numsocio=s.numsocio inner join cxcestados et on cte.estado=et.estado inner join cxcciudades cd on cd.estado=cte.estado and cd.ciudad=cte.ciudad left join ctes_status st on id=cte.vigente left join cxcfacturas f on f.tipomov=k.tipomov2 and f.numdocto=k.numdocto left join cxcfechascam x on k.tipomov=x.tipomov and k.numdocto=x.numdocto where k.tipomov not in (710,720,730,740) and k.numcte=$clavecliente and cve_aplicacion=' ' order by orden,fechafac,numdocto,afectacion desc";
	}

	$res=pg_query($conexion,$sqlbase)  or die ("Error $sqlbase");
	$resbase=$res;
	//$numero=pg_affected_rows($res);
        $totregistros=pg_num_rows($res);
        //echo $totregistros."<br>";
	//if($numero>0){
        if($totregistros>0){

                $cadini.="<table width='800' boder=1><tr><td>".date("d/m/Y")."</td><td colspan='8' align='center'><strong>GRUPO MORSA DE MEXICO S.A. DE C.V.</strong></td><td></td></tr>";
                $cadini.="<tr><td colspan='10' align='center'><b>ESTADO DE CUENTA DE CLIENTES</b></td></tr>";
                $cadini.="<tr><td ><b>CLIENTE   :</b></td><td colspan='7' align='left'> ".pg_fetch_result($res,1,0)." ".pg_fetch_result($res,1,10)."</td><td><b>HOJA:</b></td><td align='right'> 0001</td></tr>";
                $cadini.="<tr><td ><b>SOCIO     :</b></td><td colspan='7' align='left'> ".pg_fetch_result($res,1,1)." ".pg_fetch_result($res,1,13)." <td ><b>LIM.CRED: </b></td><td align='right'>".number_format(pg_fetch_result($res,1,28),2,".",",")."</td></tr>";
                $cadini.="<tr><td ><b>DIRECCION :</b></td><td colspan='7' align='left'> ".pg_fetch_result($res,1,11)."<td><b>SALDO  : </b></td><td align='right'>".number_format(pg_fetch_result($res,1,12),2,".",",")."</td></tr>";
                $cadini.="<tr><td ><b>TELEFONOS :</b></td><td colspan='3' align='left'> ".pg_fetch_result($res,1,16).", ".pg_fetch_result($res,1,17)." <td ><b> RFC: </b></td><td colspan='3'>".pg_fetch_result($res,1,19)."<td><b>CREDITO : </b></td><td align='right'>".pg_fetch_result($res,1,27)."</td></tr>";
                $cadini.="<tr><td ><b>CIUDAD    :</b></td><td colspan='7' align='left'> ".pg_fetch_result($res,1,24).", ".pg_fetch_result($res,1,25)." <td ><b>DESCTO  : </b></td><td align='right'>".pg_fetch_result($res,1,26)."</td></tr>";
                //$cadini.="<tr><td align='right' colspan='10'>__________________________________________________________________________________________________________________________________</td></tr>";
                $cadini.="<tr class='esp1'><td class='esp' align='center'><b>DOCTO</b></td><td class='esp'><b>MOVIMIENTO</b></td><td class='esp' align='center'><b>AFC</b></td><td class='esp' align='center'><b>AG</b></td><td class='esp' align='center'><b>FECHA</b></td><td class='esp' align='center'><b>FECHA VENC</b></td><td class='esp'>&nbsp;</td><td class='esp' align='right'><b>CARGO</b></td><td class='esp' align='right'><b>ABONO</b></td><td class='esp' align='right'><b>SALDO</b></td></tr>";
                //$cadini.="<tr><td align='right' colspan='10'>__________________________________________________________________________________________________________________________________</td></tr>";
                $cadfin="<tr><td align='right' colspan='10'>--------------------------------------------------</td></tr>";

		$docto=" ";
		$importe=0;
		$saldo=0;
		$saldoc=0;
		$abono=0;
		$cargo=0;
		$columna=0;
		$renglon=0;
                $totcargo=0;$totabono=0;

                echo $cadini;


		while($renglon<$totregistros){
			$registro=pg_fetch_row($res);
			if($docto!=$registro[2]){
				$docto=$registro[2];
				$importe=$registro[7];
				if($registro[9]=='A'){
					$saldo=$saldo-$importe;
			                $abono=$abono+$importe;
        		    	        $saldoc=$saldoc-$importe;
                                        $totabono+=$abono;
					/////////Cargo -> 0 y band -> 1/////////
					imprime_edocta($registro,0,0,$saldo,0,$clavesocio,1);
				}
				$saldo=$saldo+$importe;
      			        $cargo=$cargo+$importe;
                                $totcargo+=$cargo;
      			        $saldoc=$importe;
                                if($renglon<$totregistros-1){
                                   if($docto!=pg_fetch_result($res,$renglon+1,2)){
    					/////////Cargo -> 1 y band -> 1/////c///          b/
					imprime_edocta($registro,0,0,$saldo,1,$clavesocio,1);
				   }else{
					/////////Cargo -> 1 y band -> 0/////////
					imprime_edocta($registro,0,0,$saldo,1,$clavesocio,0);

				   }
                                }else{
                                     if($renglon==$totregistros-1 ){imprime_edocta($registro,0,0,$saldo,1,$clavesocio,1);}else{
					/////////Cargo -> 1 y band -> 0/////////
					imprime_edocta($registro,0,0,$saldo,1,$clavesocio,0);             }
		                }
                           $renglon=$renglon+1;
                           continue;
                         }
     			  $importe=$registro[7];
    		          $saldo=$saldo-$importe;
    		          $abono=$abono+$importe;
                          $totabono+=$abono;
    		          $saldoc=$saldoc-$importe;

                         if($renglon<$totregistros-1){
  			     if($docto!=pg_fetch_result($res,$renglon+1,2)){
				/////////Cargo -> 0 y band -> 1/////////
				imprime_edocta($registro,0,0,$saldo,0,$clavesocio,1);
		   	     }else{
				/////////Cargo -> 0 y band -> 0/////////
				imprime_edocta($registro,0,0,$saldo,0,$clavesocio,0);

			     }
                          }else{
                               if($renglon==$totregistros-1){
                                 imprime_edocta($registro,0,0,$saldo,0,$clavesocio,1);
                               }else{
				/////////Cargo -> 0 y band -> 0/////////
				imprime_edocta($registro,0,0,$saldo,0,$clavesocio,0);
                               }
			   }
		$renglon=$renglon+1;
		}
                $cadfin.="<tr><td colspan='6' align='right'>TOTALES: </td><td></td><td align='right'>".number_format($cargo,2,".",",")."</td><td align='right'>".number_format($abono,2,".",",")."</td><td align='right'>".number_format(($cargo-$abono),2,".",",")."</td></tr>";
                $cadfin.="</table>";
                echo $cadfin;

	}else{$cadretorno="NO TIENE MOVIMIENTOS";
                echo $cadretorno;}


	Desconectar($conexion);
}

?>
